package com.sdp.wx.db.wx_emp_work_attendance_rule.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;

/**
 * <p>
 *
 * </p>
 *
 * @author zsp
 * @since 2024-02-18
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("wx_emp_work_attendance_rule")
public class WxEmpWorkAttendanceRule extends Model<WxEmpWorkAttendanceRule> {

    private static final long serialVersionUID=1L;

    /**
     * 内码
     */
    @TableId("key_id")
    private String keyId;

    /**
     * 考勤内码keyId
     */
    @TableField("work_attendance_id")
    private String workAttendanceId;

    /**
     * 上班时间
     */
    @TableField("work_on_time")
    private String workOnTime;

    /**
     * 下班时间
     */
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @TableField("work_come_time")
    private String workComeTime;

    /**
     * 上班是否打卡
     */
    @TableField("work_is_on")
    private String workIsOn;

    /**
     * 下班是否打卡
     */
    @TableField("work_is_come")
    private String workIsCome;

    /**
     * 上班多次打卡第几次为准
     */
    @TableField("work_on_clock")
    private String workOnClock;

    /**
     * 下班多次打卡第几次为准
     */
    @TableField("work_come_clock")
    private String workComeClock;

    /**
     * 上班打卡起止日期
     */
    @TableField("work_on_start_time")
    private String workOnStartTime;

    /**
     * 上班打卡结束日期
     */
    @TableField("work_on_end_time")
    private String workOnEndTime;

    /**
     * 下班打卡起止日期
     */
    @TableField("work_come_start_time")
    private String workComeStartTime;

    /**
     * 下班打卡结束日期
     */
    @TableField("work_come_end_time")
    private String workComeEndTime;

    /**
     * 允许迟到几分钟
     */
    @TableField("work_be_late")
    private String workBeLate;

    /**
     * 工时
     */
    @TableField("work_hours")
    private String workHours;

    /**
     * 工作天
     */
    @TableField("work_day")
    private String workDay;


    @Override
    protected Serializable pkVal() {
        return this.keyId;
    }

}
